Skip to content

Add failsafe related platform config features #3191

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

graeme
Copy link
Contributor

@graeme graeme commented May 19, 2025

Asana Task/Github Issue: https://app.asana.com/1/137249556945/project/414235014887631/task/1210248783002400?focus=true

Description

As discussed in ✓ Technical Design: Default values for native app feature flags, for all feature flags with a default local value of enabled (AKA Failsafe feature flags) that don't belong in any other top-level feature of the Privacy Remote Configuration, we should define them as children of respective macOSBrowserConfig or iOSBrowserConfig to avoid needing to add a new top-level feature every time we want to disable a feature of this kind.

Feature change process:

  • I have added a schema to validate this feature change.
  • I have tested this change locally in all supported browsers.
  • This code for the config change is ready to merge.
  • This feature was covered by a tech design.

Site breakage mitigation process:

Brief explanation

  • Reported URL:
  • Problems experienced:
  • Platforms affected:
    • iOS
    • Android
    • Windows
    • MacOS
    • Extensions
  • Tracker(s) being unblocked:
  • Feature being disabled/modified:
  • This change is a speculative mitigation to fix reported breakage.

@graeme graeme requested review from a team as code owners May 19, 2025 16:22
@graeme graeme requested a review from federicocappelli May 19, 2025 16:22
Copy link

👋 Don't forget to add an individual reviewer (in addition to those auto-added), as this will create a task for them in Asana.

👉 Please mark this as DRAFT unless there's an intention to merge this immediately.
👉 Click "Merge when ready" if you're happy for this to be automatically merged once reviewed. (If not available, ensure you've signed in to DuckDuckGo oauth.)
👉 Don't forget to add schema changes to validate if you're adding/changing a feature.

@graeme graeme added the DO NOT MERGE Don't merge this branch unless directed label May 19, 2025
github-actions bot pushed a commit that referenced this pull request May 19, 2025
Copy link

Generated file outputs:

Time updated: Mon, 19 May 2025 16:22:57 GMT

legacy
trackers-unprotected-temporary.txt

⚠️ File is identical

v3/android-config.json (11 more)
  • v3/android-config.json
  • v3/extension-brave-config.json
  • v3/extension-bravemv3-config.json
  • v3/extension-chrome-config.json
  • v3/extension-chromemv3-config.json
  • v3/extension-config.json
  • v3/extension-edg-config.json
  • v3/extension-edge-config.json
  • v3/extension-edgmv3-config.json
  • v3/extension-firefox-config.json
  • v3/extension-safarimv3-config.json
  • v3/windows-config.json
--- v3/windows-config.json
+++ v3/windows-config.json
@@ -6941,8 +6941,12 @@
                     "reason": "https://github.com/duckduckgo/privacy-configuration/pull/2228"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "disabled"
         },
@@ -6961,8 +6965,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "maliciousSiteProtection": {
             "state": "disabled",
             "exceptions": [
                 {
v3/ios-config.json
--- v3/ios-config.json
+++ v3/ios-config.json
@@ -7049,8 +7049,12 @@
                     "reason": "https://github.com/duckduckgo/privacy-configuration/pull/2228"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "enabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "enabled",
             "minSupportedVersion": "7.87.0",
@@ -7073,8 +7077,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "maliciousSiteProtection": {
             "state": "enabled",
             "exceptions": [
                 {
v3/macos-config.json
--- v3/macos-config.json
+++ v3/macos-config.json
@@ -7087,8 +7087,12 @@
                     "reason": "https://github.com/duckduckgo/privacy-configuration/pull/2228"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "enabled"
         },
@@ -7113,8 +7117,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "enabled"
+        },
         "maliciousSiteProtection": {
             "state": "enabled",
             "exceptions": [
                 {
latest
v4/android-config.json (11 more)
  • v4/android-config.json
  • v4/extension-brave-config.json
  • v4/extension-bravemv3-config.json
  • v4/extension-chrome-config.json
  • v4/extension-chromemv3-config.json
  • v4/extension-config.json
  • v4/extension-edg-config.json
  • v4/extension-edge-config.json
  • v4/extension-edgmv3-config.json
  • v4/extension-firefox-config.json
  • v4/extension-safarimv3-config.json
  • v4/windows-config.json
--- v4/windows-config.json
+++ v4/windows-config.json
@@ -6400,8 +6400,12 @@
                     "domain": "flexmls.com"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "disabled"
         },
@@ -6420,8 +6424,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "maliciousSiteProtection": {
             "state": "disabled",
             "exceptions": [
                 {
v4/ios-config.json
--- v4/ios-config.json
+++ v4/ios-config.json
@@ -6507,8 +6507,12 @@
                     "domain": "flexmls.com"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "enabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "enabled",
             "minSupportedVersion": "7.87.0",
@@ -6531,8 +6535,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "maliciousSiteProtection": {
             "state": "enabled",
             "exceptions": [
                 {
v4/macos-config.json
--- v4/macos-config.json
+++ v4/macos-config.json
@@ -6534,8 +6534,12 @@
                     "domain": "flexmls.com"
                 }
             ]
         },
+        "iOSBrowserConfig": {
+            "exceptions": [],
+            "state": "disabled"
+        },
         "incontextSignup": {
             "exceptions": [],
             "state": "enabled"
         },
@@ -6560,8 +6564,12 @@
                 }
             },
             "exceptions": []
         },
+        "macOSBrowserConfig": {
+            "exceptions": [],
+            "state": "enabled"
+        },
         "maliciousSiteProtection": {
             "state": "enabled",
             "exceptions": [
                 {

@graeme
Copy link
Contributor Author

graeme commented May 27, 2025

Still more questions before I can address this. Closing for now.

@graeme graeme closed this May 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DO NOT MERGE Don't merge this branch unless directed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant